package com.jiangyg.mall.coupon.service;

import com.jiangyg.mall.core.support.restful.Pagination;
import com.jiangyg.mall.coupon.dto.SeckillSkuDTO;
import com.jiangyg.mall.coupon.vo.SeckillSkuVO;

import java.util.List;

/**
 * 类描述：秒杀活动商品关联
 *
 * @author jiangyg
 * @email email@jiangyg.com
 * @date 2021-10-18 21:33:05
 */
public interface SeckillSkuService {

    /**
     * 功能描述：秒杀活动商品关联分页查询
     *
     * @param pagination 分页参数
     * @return 返回分页信息
     */
    Pagination<SeckillSkuVO> selectPagination(Pagination<SeckillSkuVO> pagination) throws Exception;

    /**
     * 功能描述：根据场次ID查询秒杀商品列表
     *
     * @param sessionId 场次ID
     * @return 秒杀商品列表
     */
    List<SeckillSkuVO> selectListBySessionId(Long sessionId) throws Exception;

    /**
     * 功能描述：保存或者修改秒杀活动商品关联
     *
     * @param dto 秒杀活动商品关联
     * @return 返回是否操作成功
     */
    boolean saveOrUpdate(SeckillSkuDTO dto) throws Exception;

    /**
     * 功能描述：根据ID获取SeckillSkuRelation
     *
     * @param seckillSkuRelationId 秒杀活动商品关联ID
     * @return 返回秒杀活动商品关联
     */
    SeckillSkuVO selectById(Long seckillSkuRelationId) throws Exception;

    /**
     * 功能描述：批量删除SeckillSkuRelation
     *
     * @param seckillSkuRelationIds 要删除的ID数组
     * @return 返回是否操作成功
     */
    boolean delete(List<Long> seckillSkuRelationIds);

}

